/*******************************************************************************
 * Copyright (c) 2000, 2005 IBM Corporation and others.
 * All rights reserved. This program and the accompanying materials
 * are made available under the terms of the Eclipse Public License v1.0
 * which accompanies this distribution, and is available at
 * http://www.eclipse.org/legal/epl-v10.html
 *
 * Contributors:
 *     IBM Corporation - initial API and implementation
 *******************************************************************************/
package com.architexa.org.eclipse.gef.dnd;

import org.eclipse.swt.dnd.DropTargetEvent;
import org.eclipse.swt.dnd.Transfer;

/**
 * A <code>DropTargetListener</code> that manages and delegates to a set of {@link
 * TransferDropTargetListener}s. Each <code>TransferDropTargetListener</code> can then be
 * implemented as if it were the DropTarget's only DropTargetListener.
 * <P>
 * On each DropTargetEvent, a <i>current</i> listener is obtained from the set of all
 * TransferDropTargetListers. The current listener is the first listener to return
 * <code>true</code> for {@link TransferDropTargetListener#isEnabled(DropTargetEvent)}.
 * The current listener is forwarded all <code>DropTargetEvents</code> until some other
 * listener becomes the current listener, or the Drop terminates.
 * <P>
 * As listeners are added and removed, the combined set of Transfers is updated to contain
 * the <code>Tranfer</code> from each listener. {@link #getTransferTypes()} provides the
 * merged transfers. This set of Transfers should be set on the SWT {@link
 * org.eclipse.swt.dnd.DropTarget}.
 */
public class DelegatingDropAdapter 
	extends org.eclipse.jface.util.DelegatingDropAdapter
{

/**
 * Adds the given TransferDropTargetListener.
 * @param listener the listener
 * @deprecated 
 */
public void addDropTargetListener(TransferDropTargetListener listener) {
	super.addDropTargetListener(listener);
}

/**
 * Adds the Transfer from each listener to an array and returns that array.
 * @return the merged Transfers from all listeners
 * @deprecated use getTransfers() instead
 */
public Transfer[] getTransferTypes() {
	return super.getTransfers();
}

/**
 * Removes the given <code>TransferDropTargetListener</code>.
 * @param listener the listener
 */
public void removeDropTargetListener(TransferDropTargetListener listener) {
	super.removeDropTargetListener(listener);
}

}
